package uri.controller;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

import org.springframework.web.servlet.handler.HandlerInterceptorAdapter;

public class LoginCheckInterceptor extends HandlerInterceptorAdapter {

	@Override
	public boolean preHandle(HttpServletRequest request,
			HttpServletResponse response, Object handler) throws Exception {
		// getSession(false) : 기존 세선이 있으면 리턴, 없으면 null 반환
		HttpSession session=request.getSession(false);
		// 로그인 상태가 아니면 컨트롤러를 수행하지 않고 login.jsp 로 redirect 시킨다.
		if(session==null || session.getAttribute("loginMember")==null){ // 세션이 없거나 로그인 정보가 없거나
			System.out.println("@LoginCheckInterceptor : 비로그인 상태이므로 로그인 페이지로 이동");
			// request.getContextPath() : application 명
			response.sendRedirect(request.getContextPath()+"/member/loginCheckView.do");
			return false; // false 를 반환하면 Controller(Handler) 메서드 실행되지 않는다.
		}
		return true; // false 를 반환하면 Controller(Handler) 메서드 실행되지 않는다.
	}
	
}
